package com.adingxiong.cft.design.factory;

/**
 * @ClassName ShapeTest
 * @Description    工厂模式  定义一个创建对象的接口，让其子类自己决定实例化哪一个工厂类，工厂模式使其创建过程延迟到子类进行。
 *          让其子类实现工厂接口，返回的也是一个抽象的产品。
 * @Author xiongchao
 * @Date 2021/1/7 15:08
 **/
public class ShapeTest {


    public static void main(String[] args) {

        ShapeFactory factory = new ShapeFactory();
        Shape circle = factory.getType("circle");
        circle.draw();

        Shape square = factory.getType("square");
        square.draw();

        Shape rectangle = factory.getType("rectangle");
        rectangle.draw();
    }
}
